Skip to content

授权管理模块总览 - Overview

本分类做什么

对接 欧拉授权平台:在脚本或宿主程序中完成授权登录、激活、试用申请、解绑、公告读取与更新状态查询。

当前包含 9 个接口,以及统一错误码说明:


一、核心接口职责对照

接口典型目的
登录 - Login建立授权会话并获取当前授权状态。
激活 - Activate使用激活码进行授权激活。
申请试用 - Trial无激活码时向平台申请试用授权。
解绑 - UnBind在当前已授权设备上解绑,返回激活码。
强制解绑 - ForceUnBind换机场景:凭激活码解绑旧设备(不要求当前设备已有授权)。
获取未读公告 - GetUnreadAnnouncements获取客户端未读公告列表。
按类型获取公告 - GetAnnouncementsByType按公告类型查询公告。
获取软件更新状态 - GetSoftUpdateStatus查询是否有新版本及更新包信息(仅查询;执行更新见 软件自更新)。
获取软件更新日志 - GetSoftUpdateLogs分页获取正式版已发布版本的历史更新说明。

二、推荐使用流程

集成时建议 先尝试登录,未授权再引导用户购买/激活,激活成功后再登录一次建立会话。

下面给出 流程表 + 矢量图;文档站点(VuePress)默认不渲染 Mermaid,请以下方 SVG 为准。

流程一览(表格)

顺序环节分支
1调用 Login
2判断 Status == 1 → 进入业务; → 下一步
3提示用户购买激活码或申请试用
4Activate(有码)或 Trial(试用)
5判断 Status == 1 → 再次 Login; → 展示 Message
6再次 Login成功 → 业务;失败 → 展示 Message
7可选:未读公告、软件更新状态等登录成功后

矢量流程图(SVG)

授权管理推荐使用流程授权推荐使用流程启动程序① 调用 Login 登录(程序启动后首先执行)登录成功?Status = 1进入业务逻辑自动注册插件② 提示:无有效授权,请购买激活码或申请试用可展示 JSON 中的 Message③a Activate有激活码③b Trial无码且支持试用授权成功?Status = 1展示 Message结束或重试④ 再次调用 Login成功 → 进入业务⑤ 可选:未读公告 / 更新状态 / 更新日志登录成功后按需调用绿 = 接口调用;黄菱 = 判断;橙 = 用户提示;紫虚线 = 可选步骤

步骤说明

步骤接口说明
1登录 - Login程序启动后 首先调用。成功时 Status1,并返回到期时间、授权类型等;登录成功会自动注册插件,无需再调 Reg。
2用户提示若 Login 失败(返回 0,或 JSON 中 Status 不为 1),向用户说明 需要购买授权或输入激活码;可展示 Message 中的平台提示。
3激活 - Activate申请试用 - Trial用户输入激活码后调用 Activate;若无激活码且软件支持试用,可调用 Trial(无需激活码)。二者返回结构相同,以 Status = 1 表示授权写入成功。
4再次 Login激活/试用成功后 必须再次调用 Login,才能建立授权会话并(按需)注册插件功能。
5辅助接口(可选)登录成功后,可按需调用 获取未读公告获取软件更新状态获取软件更新日志 等。若需执行下载安装,见 软件自更新

判断成功与失败

  • Login:接口返回非 0 的 JSON 指针,且解析后 Status == 1 表示登录成功;Status == 0 表示失败,应查看 Message(多为 错误码:中文描述,如 2001:未激活,也可直接展示)。未激活时引导走激活/试用流程。
  • Activate / TrialStatus == 1 表示平台侧授权已生效,随后再 Login;Status == 0 时查看 Message(同样为 错误码:中文描述,如 2003:参数无效2014:永久卡无法续费2099:试用已结束,请购买/激活)。
  • 错误码:业务失败时 Message 多为 错误码:中文描述(2000 段);协议层失败可能返回明文 {"errorCode":100x}。完整对照表见 客户端错误码说明
  • 所有返回 JSON 的字符串指针需用 FreeStringPtr 释放。

典型场景

场景建议流程
已购买激活码的新用户Login 失败 → 提示输入激活码 → Activate → Login
支持试用的新用户Login 失败 → Trial → Login
已有授权的老用户直接 Login 成功 → 进入业务
换机 / 迁移新设备无授权时:强制解绑 - ForceUnBind 凭激活码解绑旧设备 → 在新设备 ActivateLogin。若当前设备已有授权,仍可使用 UnBind

说明:若业务上确定用户从未授权,也可先 Trial / ActivateLogin;但 以先 Login、失败再激活、成功后再 Login 为主流程,可避免已授权用户重复激活,并统一错误处理逻辑。


三、与其它模块的关系

模块关系
设置 - GetMachineCode激活常依赖 机器码 或硬件指纹,需与平台侧配置一致。

四、错误码速查

失败时请优先阅读 客户端错误码说明 - ClientErrorCodes。常用码:

Message 示例含义典型处理
2001:未激活未激活引导 Activate / Trial 后再次 Login
2005:软件不可用或未开通软件不可用或未开通检查 SoftCode、开通状态
2008:授权无效授权无效重新激活或联系客服
2009:余额不足余额不足提示充值
2012:特性不被允许FeatureList 特性不在白名单检查插件特性配置
2013:未开放客户端解绑未开放客户端解绑后台开启「开放客户端解绑」或联系发布者
2014:永久卡无法续费永久卡无法续费无需再次激活
2018:权限不合法,请检查FeatureList参数FeatureList 不合法检查 FeatureList 中的插件名与版本

五、使用注意

  • 参数、返回码、是否需 重复登录/刷新令牌各接口详情页及当前插件版本 为准。
  • 正式环境请 关闭调试输出,避免泄露账号、卡密与返回 JSON。